package com.xz.courseschedule.entity;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @Author: zys
 * @CreateTime: 2025-05-22
 */


//学期表
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Task implements Serializable {
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @Excel(name="班级编号")
    private String classNo;//班级编号

    @Excel(name = "教师编号")
    private String teacherNo;//教师编号

    @Excel(name="课程编号")
    private String courseNo;//课程编号

    @Excel(name="课程属性")
    private String courseAttr;//课程属性

    @Excel(name="周数")
    private Integer weeksSum;//周数

    @Excel(name="周学时")
    private Integer weeksNumber;//周学时

    @Excel(name="开始周")
    private String startWeek;//开始周

    @Excel(name="结束周")
    private String endWeek;//结束周

    @Excel(name = "单双周")
    private String biweekly;//单双周 0代表非单双周 1代表单周 2代表双周

    @Excel(name="所在教学区域编号")
    private String areaNo;//所在教学区域

    @Excel(name="同时上课班级")
    private String classCount;//同时上课班级

    @Excel(name = "班级名")
    private String className;//班级名

    @Excel(name = "教师名")
    private String teacherName;//教师名

    @Excel(name = "课程名")
    private String courseName;//课程名

    private Long createdBy;//创建人

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createdTime;//创建时间

    private Long updatedBy;//更新人

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime updatedTime;//更新时间
}
